<html>
<head><meta charset="utf-8"><title>State of GC &lt;-&gt; Rust integration? · t-lang/wg-unsafe-code-guidelines · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/136281-t-lang/wg-unsafe-code-guidelines/index.html">t-lang/wg-unsafe-code-guidelines</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State.20of.20GC.20.3C-.3E.20Rust.20integration.3F.html">State of GC &lt;-&gt; Rust integration?</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="165633637"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State%20of%20GC%20%3C-%3E%20Rust%20integration%3F/near/165633637" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State.20of.20GC.20.3C-.3E.20Rust.20integration.3F.html#165633637">(May 14 2019 at 15:48)</a>:</h4>
<p><span class="user-mention" data-user-id="128323">@Alan Jeffrey</span> totally different question... is there any recent update on the state of GC&lt;-&gt;Rust integration? I know boats did some work but it seems that got stalled by async/await, and I know Servo does <em>something</em> but AFAIK people still don't consider the problem 100% solved and I don't know if there has been movement there.</p>



<a name="165633744"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State%20of%20GC%20%3C-%3E%20Rust%20integration%3F/near/165633744" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alan Jeffrey <a href="https://rust-lang.github.io/zulip_archive/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State.20of.20GC.20.3C-.3E.20Rust.20integration.3F.html#165633744">(May 14 2019 at 15:49)</a>:</h4>
<p><span class="user-mention" data-user-id="120791">@RalfJ</span> it's stalled at the moment, Josephine is still the last thing I did on it, don't know of a follow-up.</p>



<a name="165633822"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State%20of%20GC%20%3C-%3E%20Rust%20integration%3F/near/165633822" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alan Jeffrey <a href="https://rust-lang.github.io/zulip_archive/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State.20of.20GC.20.3C-.3E.20Rust.20integration.3F.html#165633822">(May 14 2019 at 15:50)</a>:</h4>
<p><a href="https://arxiv.org/abs/1807.00067" target="_blank" title="https://arxiv.org/abs/1807.00067">https://arxiv.org/abs/1807.00067</a></p>



<a name="165633911"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State%20of%20GC%20%3C-%3E%20Rust%20integration%3F/near/165633911" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alan Jeffrey <a href="https://rust-lang.github.io/zulip_archive/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State.20of.20GC.20.3C-.3E.20Rust.20integration.3F.html#165633911">(May 14 2019 at 15:51)</a>:</h4>
<p>The technical problem with using Josephine in Servo is working out a migration strategy, since we have a lot of JS code :(</p>



<a name="165633942"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State%20of%20GC%20%3C-%3E%20Rust%20integration%3F/near/165633942" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alan Jeffrey <a href="https://rust-lang.github.io/zulip_archive/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State.20of.20GC.20.3C-.3E.20Rust.20integration.3F.html#165633942">(May 14 2019 at 15:51)</a>:</h4>
<p>much of it is codegen'ed but there's a fair amount that's hand crafted.</p>



<a name="165634255"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State%20of%20GC%20%3C-%3E%20Rust%20integration%3F/near/165634255" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State.20of.20GC.20.3C-.3E.20Rust.20integration.3F.html#165634255">(May 14 2019 at 15:55)</a>:</h4>
<p>do you mean JS glue code? Why would the "normal" JS code need migration?</p>



<a name="165634958"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State%20of%20GC%20%3C-%3E%20Rust%20integration%3F/near/165634958" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alan Jeffrey <a href="https://rust-lang.github.io/zulip_archive/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State.20of.20GC.20.3C-.3E.20Rust.20integration.3F.html#165634958">(May 14 2019 at 16:01)</a>:</h4>
<p><span class="user-mention" data-user-id="120791">@RalfJ</span> the places where Servo is calling into SpiderMonkey using its C++ API.</p>



<a name="165634991"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State%20of%20GC%20%3C-%3E%20Rust%20integration%3F/near/165634991" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alan Jeffrey <a href="https://rust-lang.github.io/zulip_archive/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State.20of.20GC.20.3C-.3E.20Rust.20integration.3F.html#165634991">(May 14 2019 at 16:02)</a>:</h4>
<p>Servo currently has a global variable for the JS context,</p>



<a name="165635067"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State%20of%20GC%20%3C-%3E%20Rust%20integration%3F/near/165635067" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alan Jeffrey <a href="https://rust-lang.github.io/zulip_archive/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State.20of.20GC.20.3C-.3E.20Rust.20integration.3F.html#165635067">(May 14 2019 at 16:02)</a>:</h4>
<p>Josephine tracks the state of the JS context in its type, so can't be stored in a global.</p>



<a name="165635482"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State%20of%20GC%20%3C-%3E%20Rust%20integration%3F/near/165635482" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/136281-t-lang/wg-unsafe-code-guidelines/topic/State.20of.20GC.20.3C-.3E.20Rust.20integration.3F.html#165635482">(May 14 2019 at 16:06)</a>:</h4>
<p>I see, makes sense</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>